<template>
  <!-- 总容器 -->
    <div class="wrapper">
        <h1>清宁体检预约-登录</h1>
        <section>
            <div class="input-box">
                <i class="fa fa-user-o"></i>
                <input type="text" placeholder="输入手机号码" v-model="users.userId">
            </div>
            <div class="input-box">
                <i class="fa fa-lock"></i>
                <input type="password" placeholder="输入登录密码" v-model="users.password">
            </div>
            <div class="reg-box">
                <p @click="register()">注册</p>
                <p @click="goForget()">忘记密码？</p>
            </div>
            <div class="button-box" @click="login()">登录</div>
        </section>

        <footer>
            <div>
                <div class="line"></div>
                <p>有疑问请联系客服：</p>
                <div class="line"></div>
            </div>
            <p>12345671111</p>
        </footer>
    </div>
</template>

<script>
import { reactive, toRefs} from "vue";
import axios from "@/axios.js";
import { useRouter,useRoute } from "vue-router";
import { setSessionStorage, getSessionStorage } from "@/common.js";
export default {
setup() {
    const router = useRouter();

    const state = reactive({
      users:{
        userId:"",
        password:""
      },
    });
    function login(){
        console.log("clicked login "+state.users.userId);
        if(state.users.userId==""||state.users.password==""){
            alert("请填写正确信息");
            return;
        }//8080端口login请求
        axios.post("/api/login",state.users)
        .then((response)=>{
            let result = response.data;
            if(result.status==200){
                //存储用户信息
                sessionStorage.setItem("userdata",JSON.stringify(result.data));
                setSessionStorage("token",response.data.token);
                console.log("token:"+getSessionStorage("token"));
                
                //const user=JSON.parse(sessionStorage.getItem("userdata"));
                alert("登录成功"+getSessionStorage("userdata").userId);
                router.push("/index");
            }else{
                alert(result.desc);
                state.users.password="";
                state.users.username="";
            }
        })
        .catch((error)=>{console.log("error:"+error)});
        
    }
    function goForget(){
        router.push("/forget");
    }
    function register(){
        console.log("clicked register "+state.users.userId);
        router.push("/register");
    }
    return {...toRefs(state), login, register,goForget};
  }};
</script>

<style scoped>
/*********************** 总容器 ***********************/
.wrapper{
    width: 100%;
    height: 100%;
    background-image: linear-gradient(45deg,#d3d6d8,#272727,#74e021);
    overflow: hidden;
}

/*********************** 标题部分 ***********************/
h1{
    text-align: center;
    color: #FFF;
    font-size: 9.5vw;
    font-weight: 500;
    margin-top: 13vh;
    margin-bottom: 3vh;
}

/*********************** 内容部分 ***********************/
section{
    width: 86vw;
    margin: 0 auto;
    background-color: #FFF;
    border-radius: 2.4vw;

    box-sizing: border-box;
    padding: 6vw;
}

section .input-box{
    width: 100%;
    height: 12vw;
    border: solid 1px #CCC;
    border-radius: 2vw;
    margin-top: 5vw;

    display: flex;
    align-items: center;
}
section .input-box i{
    margin: 0 3.6vw;
    font-size: 5.4vw;
    color: #CCC;
}
section .input-box input{
    border: none;
    outline: none;
}

section .reg-box{
    width: 100%;
    display: flex;
    justify-content: space-between;
    margin-top: 5vw;
    margin-bottom: 2vw;
}
section .reg-box p{
    font-size: 3.3vw;
    color: #2D727E;
    user-select: none;
    cursor: pointer;
}

section .button-box{
    width: 100%;
    height: 13vw;
    border-radius: 2vw;
    background-color: #020202;

    text-align: center;
    line-height: 13vw;
    font-size: 4.6vw;
    color: #FFF;
    letter-spacing: 1vw;

    user-select: none;
    cursor: pointer;
}

/*********************** footer部分 ***********************/
footer{
    width: 86vw;
    margin: 0 auto;
    margin-top: 12vw;
    font-size: 3.8vw;
    color: #FFF;
}
footer div{
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
footer div .line{
    width: 22vw;
    height: 1px;
    background-color: #FFF;
}
footer > p{
    text-align: center;
    margin-top: 2vw;
}
</style>